home *** CD-ROM | disk | FTP | other *** search
/ ftp.cs.arizona.edu / ftp.cs.arizona.edu.tar / ftp.cs.arizona.edu / icon / newsgrp / group99a.txt / 000204_icon-group-sender _Fri Oct 1 13:48:03 1999.msg < prev    next >
Internet Message Format  |  2000-09-20  |  4KB

  1. Return-Path: <icon-group-sender>
  2. Received: (from root@localhost)
  3.     by baskerville.CS.Arizona.EDU (8.9.1a/8.9.1) id NAA06491
  4.     for icon-group-addresses; Fri, 1 Oct 1999 13:47:54 -0700 (MST)
  5. Message-Id: <199910012047.NAA06491@baskerville.CS.Arizona.EDU>
  6. Date: Fri, 01 Oct 1999 12:34:37 -0700
  7. From: Steve Wampler <swampler@noao.edu>
  8. X-Accept-Language: en
  9. To: icon-group <icon-group@optima.CS.Arizona.EDU>
  10. Subject: An a2ps style sheet for Icon
  11. Errors-To: icon-group-errors@optima.CS.Arizona.EDU
  12. Status: RO
  13.  
  14. This is a multi-part message in MIME format.
  15. --------------351713C02FB9FE89DD635AF3
  16. Content-Type: text/plain; charset=us-ascii
  17. Content-Transfer-Encoding: 7bit
  18.  
  19.  
  20. If anyone's interested, here's the first cut at a style-sheet
  21. for printing Icon files using the a2ps utility.  I'm hoping
  22. that someone will take this and improve upon it (the handling
  23. of operators could be a lot better).  If you do improve it,
  24. please send me the improved version (and "Thanks"!).
  25.  
  26. --
  27. Steve Wampler-  SOLIS Project, National Solar Observatory
  28. swampler@noao.edu
  29. --------------351713C02FB9FE89DD635AF3
  30. Content-Type: text/plain; charset=us-ascii;
  31.  name="icon.ssh"
  32. Content-Disposition: inline;
  33.  filename="icon.ssh"
  34. Content-Transfer-Encoding: 7bit
  35.  
  36. # Style sheet for Icon
  37. #
  38.  
  39. #
  40. # This file is part of a2ps.
  41. #
  42. # This program is free software; you can redistribute it and/or modify
  43. # it under the terms of the GNU General Public License as published by
  44. # the Free Software Foundation; either version 2, or (at your option)
  45. # any later version.
  46. #
  47. # This program is distributed in the hope that it will be useful,
  48. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  49. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  50. # GNU General Public License for more details.
  51. #
  52. # You should have received a copy of the GNU General Public License
  53. # along with this program; see the file COPYING.  If not, write to
  54. # the Free Software Foundation, 59 Temple Place - Suite 330,
  55. # Boston, MA 02111-1307, USA.
  56. #
  57.  
  58. ## 1.0 Steve Wampler
  59.  
  60. style Icon is
  61. version is 1.0
  62. requires a2ps version 4.10
  63. written by "Steve Wampler <sbw@tapestry.tucson.az.us>"
  64.  
  65. first alphabet is
  66.    "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_#$&"
  67. second alphabet is
  68.    "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz._"
  69. case sensitive
  70.  
  71. keywords in Keyword are
  72.    "\&allocated", "\&ascii", "\&clock", "\&collections", "\&cset",
  73.    "\¤t", "\&date", "\&dateline", "\&digits", "\&dump", "\&e",
  74.    "\&error", "\&errornumber", "\&errortext", "\&errorvalue",
  75.    "\&errout", "\&fail", "\&features", "\&file", "\&host", "\&input",
  76.    "\&lcase", "\&letters", "\&level", "\&line", "\&main", "\&null",
  77.    "\&outpout", "\&phi", "\&pi", "\&pos", "\&progname", "\&random",
  78.    "\®ions", "\&source", "\&storage", "\&subject", "\&time",
  79.    "\&trace", "\&ucase", "\&version"
  80. end keywords
  81.  
  82. keywords in Keyword_strong are
  83.    "break", "by", "case", "create", "default", "do", "else", "end",
  84.    "every", "fail", "global", "if", "initial", "invocable", "link",
  85.    "local", "next", "not", "of", "procedure", "record", "repeat",
  86.    "return", "static", "suspend", "then", "to", "until", "while"
  87. end keywords
  88.  
  89. optional operators are
  90.    #  This needs more work!
  91.  
  92.    <- \leftarrow,
  93.    ~= \neq,
  94.    === \equiv,
  95.    <<<=,
  96.    >>>=,
  97.    <<=,
  98.    >>=,
  99.    <= \leq,
  100.    >= \geq,
  101.    ~ \not
  102. end operators
  103.  
  104. sequences are
  105.  
  106.     # Comments (could make this "Comment_strong" to stand out more...)
  107.     "#" Comment,
  108.  
  109.     # Strings
  110.     C-string,
  111.  
  112.     # Csets
  113.     "'" Plain String "'" Plain
  114.        exceptions are
  115.     "\\'", "\\\\"
  116.        end exceptions,
  117.  
  118.     # Special case procedure declarations so names stand out
  119.     "procedure " Keyword_strong Label_strong /[ \t]*(/ Plain
  120.  
  121. end sequences
  122.  
  123. end style
  124.  
  125. --------------351713C02FB9FE89DD635AF3--
  126.  
  127.